﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TMD.GT.LogicaNegocio.Contrato;
using TMD.GT.AccesoDatos.Contrato;
using TMD.GT.Entidades;

namespace TMD.GT.LogicaNegocio.Implementacion
{
    public class ComponenteLogica : IComponenteLogica
    {

        private readonly IComponenteData _ComponenteData;

        public ComponenteLogica(IComponenteData componenteData)
        {
            _ComponenteData = componenteData;
        }


        public List<Componente> ListarComponentes(Componente componente)
        {
            return _ComponenteData.ListarComponentes(componente);
        }

        public List<Componente> ListarComponentes2(Componente componente)
        {
            return _ComponenteData.ListarComponentes(componente);
        }

        public List<Componente> ListarComponentes3(Componente componente)
        {
            return _ComponenteData.ListarComponentes3(componente);
        }

        public List<Componente> ListaUnComponente(Componente componente)
        { 
            return _ComponenteData.ListaUnComponente (componente);
        }


        //Agregado CUS2 //
        public List<Componente> ListarComponentesPriori(Componente componente)
        {
            return _ComponenteData.ListarComponentesPriori(componente);
        }
        public void ActualizarPriorizacion(string codigo, int priorizacion)
        {
            _ComponenteData.ActualizarPriorizacion(codigo, priorizacion);
        }
        
        public void ActualizarAprobacion(string codigo,string estado_componente, string observacion)
        {
            _ComponenteData.ActualizarAprobacion(codigo, estado_componente, observacion);
        }
        //Agregado CUS2 //


        // CUS - Seleccion Componente


        public void ActualizarEstadoCategorización(string codigo,string estado_componente)
        {
            _ComponenteData.ActualizarEstadoCategorización(codigo, estado_componente);
        }

        public void ActualizarComponente(Componente componente)
        {
            _ComponenteData.ActualizarComponente(componente);
        }

        public void CrearComponente(Componente componente)
        {
            _ComponenteData.CrearComponente(componente);
        }

        //agregò raul
        public List<Componente> ListarComponentesMonitoreo(Componente componente)
        {
            return _ComponenteData.ListarComponentesMonitoreo(componente);
        }

    }
}
